#!/usr/bin/python3
# ******************************************************************************
# Copyright (c) Huawei Technologies Co., Ltd. 2021-2021. All rights reserved.
# licensed under the Mulan PSL v2.
# You can use this software according to the terms and conditions of the Mulan PSL v2.
# You may obtain a copy of Mulan PSL v2 at:
#     http://license.coscl.org.cn/MulanPSL2
# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR
# PURPOSE.
# See the Mulan PSL v2 for more details.
# ******************************************************************************/
import requests
from requests import HTTPError
from requests.auth import HTTPBasicAuth
import urllib3

urllib3.disable_warnings()

obs_auth = HTTPBasicAuth('Lhw-KunPeng', 'Huawei12#$')
obs_api_base = "https://build.openeuler.org/"


def obs_get(url, data=None):
    url = obs_api_base + url
    try:
        response = requests.get(url=url, data=data, auth=obs_auth, verify=False)
        if response.status_code != 200:
            print(f'[ERROR] request {url} not ok: {response.status_code}')
            raise HTTPError
        return response.text
    except HTTPError as e:
        print(f'[ERROR] request {url} failed: {e}')
        raise


def obs_post(url, data=None):
    url = obs_api_base + url
    try:
        response = requests.post(url=url, data=data, auth=obs_auth)
        if response.status_code != 200:
            print(f'[ERROR] request {url} not ok: {response.status_code}')
            raise HTTPError
        return response.text
    except HTTPError as e:
        print(f'[ERROR] request {url} failed: {e}')
        raise
